home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 010 / origami2.arc / PENGUIN.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1980-01-01  |  25.5 KB  |  1,166 lines

  1. 10  SCREEN 1,0:COLOR 1,15: KEY OFF: CLS
  2. 15  DEF FNCEN$(V$,X)=SPACE$((X-LEN(V$))/2)+V$
  3. 20  LOCATE 12,1:PRINT FNCEN$("PENGUIN",40)
  4. 25  PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT
  5. 30  PRINT FNCEN$("(C) COPYRIGHT 1985 George Furiya",40)
  6. 35  PRINT FNCEN$("All Rights Reserved",40)
  7. 40  FOR K=1 TO 2500:NEXT K
  8. 45  CLS
  9. 50  GOSUB 30000   '** Textpad **
  10. 55  PRINT FNCEN$("PENGUIN begins with an inverted KITE.",40)
  11. 60  FOR A=0 TO 20
  12. 65  OUT 66,A:OUT 66,A
  13. 70  OUT 97,(INP(97) OR 3)
  14. 75  NEXT A
  15. 80  SOUND 37,0
  16. 85  FOR K=1 TO 250:NEXT K
  17. 90                              '***End Zapsound***
  18. 95              '*** start draw ***
  19. 100  LINE(160,30)-(80,100)
  20. 105  LINE-(160,170)
  21. 110  LINE-(240,100)
  22. 115  LINE-(160,30)
  23. 120  FOR K=1 TO 1500:NEXT K
  24. 125  FOR V=30 TO 170 STEP 2
  25. 130  PSET(160,V)
  26. 135  NEXT V
  27. 140  FOR K=1 TO 750:NEXT K
  28. 145  LINE(115,130)-(160,30)
  29. 150  LINE-(205,130)
  30. 155  FOR K=1 TO 750:NEXT K
  31. 160  LINE(84,104)-(114,130),0
  32. 165  FOR Q=0 TO 42
  33. 170  LINE(160,30)-(80+Q,100+0.36*Q)
  34. 175  LINE-(115,130)
  35. 180  LINE(160,30)-(80+Q,100+0.36*Q),0
  36. 185  LINE-(115,130),0
  37. 190  NEXT Q
  38. 195  FOR Q=0 TO 38
  39. 200  LINE(160,30)-(122+Q,115+0.39*Q)
  40. 205  LINE-(115,130)
  41. 210  LINE(160,30)-(122+Q,114+0.39*Q)
  42. 215  LINE-(115,130)
  43. 220  NEXT Q
  44. 225  FOR K=1 TO 750:NEXT K
  45. 230  LINE(236,104)-(206,130),0
  46. 235  FOR Q=0 TO 42
  47. 240  LINE(160,30)-(240-Q,100+0.36*Q)
  48. 245  LINE-(205,130)
  49. 250  LINE(160,30)-(240-Q,100+0.36*Q),0
  50. 255  LINE-(205,130),0
  51. 260  NEXT Q
  52. 265  FOR Q=0 TO 38
  53. 270  LINE(160,30)-(198-Q,115+0.39*Q)
  54. 275  LINE-(205,130)
  55. 280  LINE(160,30)-(198-Q,114+0.39*Q)
  56. 285  LINE-(205,130)
  57. 290  NEXT Q
  58. 295  LINE(160,30)-(160,130),0
  59. 300  FOR K=1 TO 750:NEXT K
  60. 305  GOSUB 30000   '** Textpad **
  61. 310  PRINT FNCEN$("There!  I'll wait for your KITE.",40)
  62. 315  FOR K=1 TO 1500:NEXT K
  63. 320  GOSUB 30000   '*** Textpad ***
  64. 325  PRINT FNCEN$("Press <C> when ready to proceed.",40)
  65. 330  A$=INKEY$:IF A$="" GOTO 330
  66. 335  IF A$="C" OR A$="c" GOTO 345
  67. 340  GOTO 320
  68. 345  GOSUB 30000   '** Textpad **
  69. 350  PRINT FNCEN$("Our first folds are preparatory folds",40)
  70. 355  FOR K=1 TO 1500:NEXT K
  71. 360  PRINT FNCEN$("for PENGUIN's beak.",40)
  72. 365  FOR K=1 TO 1500:NEXT K
  73. 370  GOSUB 30000      '** Textpad **
  74. 375  PRINT FNCEN$("We begin by folding this corner",40)
  75. 380  FOR K=1 TO 750:NEXT K
  76. 385                              '*** arrow down ***
  77. 390  FOR K=1 TO 15
  78. 395  PSET(160,22):DRAW"E5L4U7L2D7L4F5"
  79. 400  PAINT(160,16)
  80. 405  FOR M=1 TO 25:NEXT M
  81. 410  CIRCLE(160,16),7,0
  82. 415  PAINT(160,16),0
  83. 420  NEXT K
  84. 425                              '***end arrow down ***
  85. 430  FOR K=1 TO 750:NEXT K
  86. 435  GOSUB 30000      '** Textpad **
  87. 440  PRINT FNCEN$("down across this line of our choosing,",40)
  88. 445  FOR K=1 TO 750:NEXT K
  89. 450  FOR H=154 TO 166 STEP 2
  90. 455  PSET(H,45),0
  91. 460  NEXT H
  92. 465  FOR K=1 TO 750:NEXT K
  93. 470  GOSUB 30000      '** Textpad **
  94. 475  PRINT FNCEN$("THUS!",40)
  95. 480  FOR K=1 TO 750:NEXT K
  96. 485  FOR V=30 TO 45
  97. 490  LINE(152,45)-(160,V),0
  98. 495  LINE-(168,45),0
  99. 500  NEXT V
  100. 505  FOR V=45 TO 60
  101. 510  LINE(152,45)-(160,V),0
  102. 515  LINE-(168,45),0
  103. 520  LINE(152,45)-(160,V)
  104. 525  LINE-(168,45)
  105. 530  NEXT V
  106. 535  LINE(152,45)-(160,60),0
  107. 540  LINE-(168,45),0
  108. 545  FOR K=1 TO 750:NEXT K
  109. 550  GOSUB 30000      '** Textpad **
  110. 555  PRINT FNCEN$("Our next fold takes us back up again",40)
  111. 560  FOR K=1 TO 1500:NEXT K
  112. 565  GOSUB 30000      '** Textpad **
  113. 570  PRINT FNCEN$("across this line,",40)
  114. 575  FOR K=1 TO 750:NEXT K
  115. 580  FOR H=155 TO 165 STEP 2
  116. 585  PSET(H,50),0
  117. 590  NEXT H
  118. 595  FOR K=1 TO 750:NEXT K
  119. 600  PRINT FNCEN$("again of our own choosing,",40)
  120. 605  FOR K=1 TO 1500:NEXT K
  121. 610  GOSUB 30000      '** Textpad **
  122. 615  PRINT FNCEN$("SO!",40)
  123. 620  FOR K=1 TO 750:NEXT K
  124. 625  FOR V=60 TO 40 STEP -1
  125. 630  LINE(155,50)-(160,V),0
  126. 635  LINE-(165,50),0
  127. 640  LINE(155,50)-(160,V)
  128. 645  LINE-(165,50)
  129. 650  LINE(155,51)-(160,60)
  130. 655  LINE-(165,51)
  131. 660  PSET(160,V),0
  132. 665  PSET(160,60),0
  133. 670  NEXT V
  134. 675  LINE(157,45)-(155,50),0
  135. 680  LINE-(165,50),0
  136. 685  LINE-(163,45),0
  137. 690  FOR K=1 TO 750:NEXT K
  138. 695  GOSUB 30000       '*** Textpad ***
  139. 700  PRINT FNCEN$("Want to see those folds again?",40)
  140. 705  FOR K=1 TO 1500:NEXT K
  141. 710  GOSUB 30000       '*** Textpad ***
  142. 715  PRINT FNCEN$("If so, press <R>.",40)
  143. 720  FOR K=1 TO 1000:NEXT K
  144. 725  PRINT FNCEN$("If not, press <C> to continue.",40)
  145. 730  A$=INKEY$:IF A$="" GOTO 730
  146. 735  IF A$="r" OR A$="R" GOTO 750
  147. 740  IF A$="c" OR A$="C" GOTO 835
  148. 745  GOTO 710
  149. 750  FOR A=0 TO 20
  150. 755  OUT 66,A:OUT 66,A
  151. 760  OUT 97,(INP(97) OR 3)
  152. 765  NEXT A
  153. 770  SOUND 37,0
  154. 775                              '***End Zapsound***
  155. 780              '*** start draw ***
  156. 785  LINE(150,30)-(170,50),0,BF
  157. 790  LINE(151,50)-(160,30)
  158. 795  LINE-(169,50)
  159. 800  LINE-(151,50)
  160. 805  PAINT(160,40)
  161. 810  LINE(160,30)-(160,50),0
  162. 815  GOSUB 30000      '** Textpad **
  163. 820  PRINT FNCEN$("* Review *",40)
  164. 825  FOR K=1 TO 1500:NEXT K
  165. 830  GOTO 370
  166. 835  GOSUB 30000      '** Textpad **
  167. 840  PRINT FNCEN$("We'll be using those folds",40)
  168. 845  FOR K=1 TO 1500:NEXT K
  169. 850  PRINT FNCEN$("for PENGUIN's beak later on.",40)
  170. 855  FOR K=1 TO 1500:NEXT K
  171. 860  GOSUB 30000      '** Textpad **
  172. 865  PRINT FNCEN$("Let's move on.",40)
  173. 870  FOR K=1 TO 1500:NEXT K
  174. 875  FOR V=50 TO 30 STEP -1
  175. 880  LINE(151,50)-(160,V)
  176. 885  LINE-(169,50)
  177. 890  PSET(160,V),0
  178. 895  NEXT V
  179. 900  LINE(160,30)-(160,40),0
  180. 905  FOR K=1 TO 750:NEXT K
  181. 910  GOSUB 30000   '** Textpad **
  182. 915  PRINT FNCEN$("Our next fold takes this corner",40)
  183. 920  FOR K=1 TO 1500:NEXT K
  184. 925  LINE(160,130)-(160,120),0
  185. 930  LINE-(150,130),0
  186. 935  LINE-(160,130),0
  187. 940  PAINT(158,128),0
  188. 945  LINE(150,130)-(150,120),0
  189. 950  LINE-(160,120),0
  190. 955  FOR K=1 TO 1500:NEXT K
  191. 960  GOSUB 30000   '** Textpad **
  192. 965  PRINT FNCEN$("up to this point",40)
  193. 970  FOR K=1 TO 750:NEXT K
  194. 975  FOR K=1 TO 15
  195. 980  CIRCLE(95,100),5
  196. 985  LINE(93,100)-(97,100)
  197. 990  LINE(95,98)-(95,102)
  198. 995  FOR M=1 TO 25:NEXT M
  199. 1000  CIRCLE(95,100),5,0
  200. 1005  LINE(93,100)-(97,100),0
  201. 1010  LINE(95,98)-(95,102),0
  202. 1015  NEXT K
  203. 1020  FOR K=1 TO 750:NEXT K
  204. 1025  GOSUB 30000   '** Textpad **
  205. 1030  PRINT FNCEN$("across this line,",40)
  206. 1035  FOR K=1 TO 750:NEXT K
  207. 1040  LINE(160,58)-(120,130),0
  208. 1045  FOR K=1 TO 750:NEXT K
  209. 1050  GOSUB 30000   '** Textpad **
  210. 1055  PRINT FNCEN$("(Hint: Use your straightedge",40)
  211. 1060  FOR K=1 TO 1500:NEXT K
  212. 1065  PRINT FNCEN$("to draw that line",40)
  213. 1070  FOR K=1 TO 1500:NEXT K
  214. 1075  PRINT FNCEN$("and help get our fold started.)",40)
  215. 1080  FOR K=1 TO 2500:NEXT K
  216. 1085  GOSUB 30000   '*** Textpad ***
  217. 1090  PRINT FNCEN$("Are you ready?  If so, press <C>.",40)
  218. 1095  A$=INKEY$:IF A$="" GOTO 1095
  219. 1100  IF A$="C" OR A$="c" GOTO 1110
  220. 1105  GOTO 1085
  221. 1110  GOSUB 30000   '** Textpad **
  222. 1115  PRINT FNCEN$("and away we go!",40)
  223. 1120  FOR K=1 TO 750:NEXT K
  224. 1125  LINE(150,130)-(150,120)
  225. 1130  LINE-(159,120)
  226. 1135  LINE-(159,130)
  227. 1140  LINE-(150,130)
  228. 1145  PAINT(158,128)
  229. 1150  FOR Q=0 TO 32
  230. 1155  LINE(160,58)-(159-Q,130-0.47*Q),0
  231. 1160  LINE-(120,130),0
  232. 1165  LINE(160,58)-(160-Q,130-0.47*Q),0
  233. 1170  LINE-(120,130),0
  234. 1175  NEXT Q
  235. 1180  FOR Q=0 TO 33
  236. 1185  LINE(160,58)-(128-Q,115-0.45*Q)
  237. 1190  LINE-(120,130)
  238. 1195  LINE(160,58)-(128-Q,115-0.45*Q),0
  239. 1200  LINE-(120,130),0
  240. 1205  LINE(160,58)-(129-Q,115-0.45*Q),0
  241. 1210  LINE-(120,130),0
  242. 1215  LINE(160,58)-(120,130)
  243. 1220  NEXT Q
  244. 1225  LINE(160,58)-(95,100)
  245. 1230  LINE-(120,130)
  246. 1235  FOR V=60 TO 170 STEP 2
  247. 1240  PSET(160,V)
  248. 1245  NEXT V
  249. 1250  GOSUB 30000       '*** Textpad ***
  250. 1255  PRINT FNCEN$("To review that fold, press <R>",40)
  251. 1260  FOR K=1 TO 1000:NEXT K
  252. 1265  PRINT FNCEN$("To continue, press <C>.",40)
  253. 1270  A$=INKEY$:IF A$="" GOTO 1270
  254. 1275  IF A$="r" OR A$="R" GOTO 1290
  255. 1280  IF A$="c" OR A$="C" GOTO 1385
  256. 1285  GOTO 1250
  257. 1290  FOR A=0 TO 20
  258. 1295  OUT 66,A:OUT 66,A
  259. 1300  OUT 97,(INP(97) OR 3)
  260. 1305  NEXT A
  261. 1310  SOUND 37,0
  262. 1315  LINE(115,124)-(95,100),0
  263. 1320  LINE-(140,71),0
  264. 1325  LINE(160,30)-(115,130)
  265. 1330  LINE-(160,130)
  266. 1335  LINE-(160,58)
  267. 1340  PAINT(150,100)
  268. 1345  PAINT(140,85)
  269. 1350  PSET(133,75),0:PSET(141,70),0
  270. 1355  PSET(119,84),0:PSET(116,125),0
  271. 1360  LINE(160,58)-(160,130),0
  272. 1365  GOSUB 30000   '** Textpad **
  273. 1370  PRINT FNCEN$("* Review *",40)
  274. 1375  FOR K=1 TO 750:NEXT K
  275. 1380  GOTO 910
  276. 1385  GOSUB 30000   '** Textpad **
  277. 1390  PRINT FNCEN$("We repeat that fold on the other side,",40)
  278. 1395  FOR K=1 TO 1500:NEXT K
  279. 1400  GOSUB 30000   '** Textpad **
  280. 1405  PRINT FNCEN$("SO!",40)
  281. 1410  FOR K=1 TO 750:NEXT K
  282. 1415  LINE(160,58)-(200,130),0
  283. 1420  FOR K=1 TO 750:NEXT K
  284. 1425  FOR Q=0 TO 32
  285. 1430  LINE(161,58)-(162+Q,130-0.47*Q),0
  286. 1435  LINE-(200,130),0
  287. 1440  LINE(161,58)-(161+Q,130-0.47*Q),0
  288. 1445  LINE-(200,130),0
  289. 1450  NEXT Q
  290. 1455  FOR Q=0 TO 33
  291. 1460  LINE(160,58)-(192+Q,115-0.45*Q)
  292. 1465  LINE-(200,130)
  293. 1470  LINE(160,58)-(192+Q,115-0.45*Q),0
  294. 1475  LINE-(200,130),0
  295. 1480  LINE(160,58)-(191+Q,115-0.45*Q),0
  296. 1485  LINE-(200,130),0
  297. 1490  LINE(160,58)-(200,130)
  298. 1495  NEXT Q
  299. 1500  LINE(160,58)-(225,100)
  300. 1505  LINE-(200,130)
  301. 1510  FOR K=1 TO 750:NEXT K
  302. 1515  GOSUB 30000   '*** Textpad ***
  303. 1520  PRINT FNCEN$("Press <C> to continue.",40)
  304. 1525  A$=INKEY$:IF A$="" GOTO 1525
  305. 1530  IF A$="C" OR A$="c" GOTO 1540
  306. 1535  GOTO 1515
  307. 1540  GOSUB 30000   '** Textpad **
  308. 1545  PRINT FNCEN$("Using our straightedge again,",40)
  309. 1550  FOR K=1 TO 1500:NEXT K
  310. 1555  GOSUB 30000   '** Textpad **
  311. 1560  PRINT FNCEN$("we draw this line",40)
  312. 1565  FOR K=1 TO 1500:NEXT K
  313. 1570  LINE(153,64)-(118,126)
  314. 1575  FOR K=1 TO 750:NEXT K
  315. 1580  GOSUB 30000   '** Textpad **
  316. 1585  PRINT FNCEN$("and fold this corner",40)
  317. 1590  FOR K=1 TO 750:NEXT K
  318. 1595  FOR K=1 TO 15
  319. 1600  PSET(87,100):DRAW"H5D4L7D2R7D4E5"
  320. 1605  PAINT(81,100)
  321. 1610  FOR M=1 TO 25:NEXT M
  322. 1615  CIRCLE(81,100),7,0
  323. 1620  PAINT(81,100),0
  324. 1625  NEXT K
  325. 1630  FOR K=1 TO 750:NEXT K
  326. 1635  GOSUB 30000   '** Textpad **
  327. 1640  PRINT FNCEN$("down to this point,",40)
  328. 1645  FOR K=1 TO 750:NEXT K
  329. 1650  FOR K=1 TO 15
  330. 1655  CIRCLE(154,126),5
  331. 1660  LINE(152,126)-(156,126)
  332. 1665  LINE(154,124)-(154,128)
  333. 1670  FOR M=1 TO 25:NEXT M
  334. 1675  CIRCLE(154,126),5,0
  335. 1680  LINE(152,126)-(156,126),0
  336. 1685  LINE(154,124)-(154,128),0
  337. 1690  NEXT K
  338. 1695  FOR K=1 TO 750:NEXT K
  339. 1700  GOSUB 30000   '** Textpad **
  340. 1705  PRINT FNCEN$("THUS!",40)
  341. 1710  FOR K=1 TO 750:NEXT K
  342. 1715  LINE(116,125)-(95,100),0
  343. 1720  LINE-(140,71),0
  344. 1725  LINE(119,84)-(141,70),0
  345. 1730  FOR Q=0 TO 30
  346. 1735  LINE(153,64)-(95+Q,100+0.43*Q)
  347. 1740  LINE-(118,126)
  348. 1745  LINE(153,64)-(95+Q,100+0.43*Q),0
  349. 1750  LINE-(118,126),0
  350. 1755  NEXT Q
  351. 1760  PSET(152,64):PSET(120,120)
  352. 1765  LINE(153,64)-(118,126)
  353. 1770  LINE(160,30)-(115,130)
  354. 1775  PAINT(143,71)
  355. 1780  FOR Q=0 TO 28
  356. 1785  LINE(153,64)-(125+Q,113+0.46*Q)
  357. 1790  LINE-(118,126)
  358. 1795  LINE(153,64)-(124+Q,113+0.46*Q)
  359. 1800  LINE-(118,126)
  360. 1805  LINE(153,64)-(118,126),0
  361. 1810  NEXT Q
  362. 1815  FOR K=1 TO 750:NEXT K
  363. 1820  GOSUB 30000       '*** Textpad ***
  364. 1825  PRINT FNCEN$("Press <R> to review that fold.",40)
  365. 1830  FOR K=1 TO 1000:NEXT K
  366. 1835  PRINT FNCEN$("Press <C> to continue.",40)
  367. 1840  A$=INKEY$:IF A$="" GOTO 1840
  368. 1845  IF A$="r" OR A$="R" GOTO 1860
  369. 1850  IF A$="c" OR A$="C" GOTO 1920
  370. 1855  GOTO 1820
  371. 1860  FOR A=0 TO 20
  372. 1865  OUT 66,A:OUT 66,A
  373. 1870  OUT 97,(INP(97) OR 3)
  374. 1875  NEXT A
  375. 1880  SOUND 37,0
  376. 1885  LINE(115,64)-(153,126),0,BF
  377. 1890  LINE(160,58)-(120,130)
  378. 1895  LINE(160,58)-(95,100)
  379. 1900  LINE-(120,130)
  380. 1905  LINE(160,30)-(142,70)
  381. 1910  PAINT(145,66)
  382. 1915  GOTO 1540
  383. 1920  GOSUB 30000   '** Textpad **
  384. 1925  PRINT FNCEN$("and repeat on the other side,",40)
  385. 1930  FOR K=1 TO 1500:NEXT K
  386. 1935  GOSUB 30000   '** Textpad **
  387. 1940  PRINT FNCEN$("SO!",40)
  388. 1945  FOR K=1 TO 750:NEXT K
  389. 1950  LINE(167,64)-(202,126)
  390. 1955  FOR K=1 TO 750:NEXT K
  391. 1960  LINE(179,70)-(201,84),0
  392. 1965  LINE(204,125)-(225,100),0
  393. 1970  LINE-(180,71),0
  394. 1975  LINE(179,84)-(201,70),0
  395. 1980  FOR Q=0 TO 30
  396. 1985  LINE(167,64)-(225-Q,100+0.43*Q)
  397. 1990  LINE-(202,126)
  398. 1995  LINE(167,64)-(225-Q,100+0.43*Q),0
  399. 2000  LINE-(202,126),0
  400. 2005  NEXT Q
  401. 2010  PSET(168,64):PSET(200,120)
  402. 2015  LINE(167,64)-(202,126)
  403. 2020  LINE(160,30)-(205,130)
  404. 2025  PAINT(177,71)
  405. 2030  FOR Q=0 TO 28
  406. 2035  LINE(167,64)-(195-Q,113+0.46*Q)
  407. 2040  LINE-(202,126)
  408. 2045  LINE(167,64)-(196-Q,113+0.46*Q)
  409. 2050  LINE-(202,126)
  410. 2055  LINE(167,64)-(202,126),0
  411. 2060  NEXT Q
  412. 2065  FOR K=1 TO 750:NEXT K
  413. 2070  GOSUB 30000   '*** Textpad ***
  414. 2075  PRINT FNCEN$("Press <C> to continue.",40)
  415. 2080  A$=INKEY$:IF A$="" GOTO 2080
  416. 2085  IF A$="C" OR A$="c" GOTO 2095
  417. 2090  GOTO 2070
  418. 2095  GOSUB 30000   '** Textpad **
  419. 2100  PRINT FNCEN$("We now fold the right side of PENGUIN",40)
  420. 2105  FOR K=1 TO 750:NEXT K
  421. 2110  LINE(203,132)-(179,153),0
  422. 2115  FOR K=1 TO 15
  423. 2120  LINE(160,30)-(205,131),0
  424. 2125  LINE-(160,170),0
  425. 2130  FOR M=1 TO 25:NEXT M
  426. 2135  LINE(160,30)-(205,131)
  427. 2140  LINE-(160,170)
  428. 2145  NEXT K
  429. 2150  GOSUB 30000   '** Textpad **
  430. 2155  PRINT FNCEN$("over onto the back of its left side,",40)
  431. 2160  FOR K=1 TO 750:NEXT K
  432. 2165  LINE(117,132)-(141,153),0
  433. 2170  FOR K=1 TO 15
  434. 2175  LINE(160,30)-(115,131),0
  435. 2180  LINE-(160,170),0
  436. 2185  FOR M=1 TO 25:NEXT M
  437. 2190  LINE(160,30)-(115,131)
  438. 2195  LINE-(160,170)
  439. 2200  NEXT K
  440. 2205  FOR K=1 TO 750:NEXT K
  441. 2210  GOSUB 30000   '** Textpad **
  442. 2215  PRINT FNCEN$("SO!",40)
  443. 2220  FOR K=1 TO 750:NEXT K
  444. 2225  FOR H=205 TO 160 STEP -1
  445. 2230  LINE(160,30)-(H,130)
  446. 2235  LINE-(160,170)
  447. 2240  LINE(160,30)-(H,130),0
  448. 2245  LINE-(160,170),0
  449. 2250  LINE(164,167)-(205,131),0
  450. 2255  PSET(170,51),0
  451. 2260  NEXT H
  452. 2265  LINE(160,30)-(160,170)
  453. 2270  FOR K=1 TO 60
  454. 2275  LINE(160,30)-(160,170),1
  455. 2280  LINE(160,30)-(160,170)
  456. 2285  NEXT K
  457. 2290  LINE(160,31)-(116,130),1
  458. 2295  LINE-(160,169),1
  459. 2300  FOR K=1 TO 1500:NEXT K
  460. 2305  LINE(160,31)-(116,130)
  461. 2310  LINE-(160,169),0
  462. 2315  PSET(160,169),2
  463. 2320  FOR K=1 TO 750:NEXT K
  464. 2325  GOSUB 30000   '*** Textpad ***
  465. 2330  PRINT FNCEN$("Press <C> to continue.",40)
  466. 2335  A$=INKEY$:IF A$="" GOTO 2335
  467. 2340  IF A$="C" OR A$="c" GOTO 2350
  468. 2345  GOTO 2325
  469. 2350  GOSUB 30000   '** Textpad **
  470. 2355  PRINT FNCEN$("We now locate the midpoint of this edge",40)
  471. 2360  FOR K=1 TO 1500:NEXT K
  472. 2365  PSET(129,80):DRAW"H5D4L7D2R7D4E5"
  473. 2370  PAINT(123,80)
  474. 2375  FOR K=1 TO 15
  475. 2380  LINE(160,30)-(115,130),0
  476. 2385  FOR M=1 TO 25:NEXT M
  477. 2390  LINE(160,30)-(115,130)
  478. 2395  NEXT K
  479. 2400  FOR K=1 TO 250:NEXT K
  480. 2405  LINE(137,80)-(138,80),2
  481. 2410  FOR K=1 TO 1500:NEXT K
  482. 2415  CIRCLE(123,80),7,0
  483. 2420  PAINT(123,80),0
  484. 2425  GOSUB 30000   '** Textpad **
  485. 2430  PRINT FNCEN$("and choose a point, any point,",40)
  486. 2435  FOR K=1 TO 1500:NEXT K
  487. 2440  PRINT FNCEN$("along the upper part of this edge,",40)
  488. 2445  FOR K=1 TO 1500:NEXT K
  489. 2450  PSET(168,60):DRAW"E5D4R7D2L7D4H5"
  490. 2455  PAINT(174,60)
  491. 2460  FOR K=1 TO 15
  492. 2465  LINE(160,30)-(160,170),0
  493. 2470  FOR M=1 TO 25:NEXT M
  494. 2475  LINE(160,30)-(160,170)
  495. 2480  NEXT K
  496. 2485  FOR K=1 TO 750:NEXT K
  497. 2490  CIRCLE(174,60),7,0
  498. 2495  PAINT(174,60),0
  499. 2500  GOSUB 30000   '** Textpad **
  500. 2505  PRINT FNCEN$("let's say, here,",40)
  501. 2510  FOR K=1 TO 750:NEXT K
  502. 2515  PSET(168,70):DRAW"E5D4R7D2L7D4H5"
  503. 2520  PAINT(174,70)
  504. 2525  FOR K=1 TO 250:NEXT K
  505. 2530  LINE(159,70)-(160,70),2
  506. 2535  FOR K=1 TO 1500:NEXT K
  507. 2540  CIRCLE(174,70),7,0
  508. 2545  PAINT(174,70),0
  509. 2550  GOSUB 30000   '** Textpad **
  510. 2555  PRINT FNCEN$("and draw a line, SO!",40)
  511. 2560  FOR K=1 TO 750:NEXT K
  512. 2565  LINE(137,80)-(160,70),2
  513. 2570  FOR K=1 TO 1500:NEXT K
  514. 2575  GOSUB 30000   '** Textpad **
  515. 2580  PRINT FNCEN$("Experiment with the location",40)
  516. 2585  FOR K=1 TO 1500:NEXT K
  517. 2590  PRINT FNCEN$("and angle of that line.",40)
  518. 2595  FOR K=1 TO 1500:NEXT K
  519. 2600  GOSUB 30000   '** Textpad **
  520. 2605  PRINT FNCEN$("You can give PENGUIN",40)
  521. 2610  FOR K=1 TO 1500:NEXT K
  522. 2615  PRINT FNCEN$("a variety of personalities",40)
  523. 2620  FOR K=1 TO 1500:NEXT K
  524. 2625  PRINT FNCEN$("by tinkering with that line.",40)
  525. 2630  FOR K=1 TO 1500:NEXT K
  526. 2635  GOSUB 30000   '*** Textpad ***
  527. 2640  PRINT FNCEN$("Press <C> to continue.",40)
  528. 2645  A$=INKEY$:IF A$="" GOTO 2645
  529. 2650  IF A$="C" OR A$="c" GOTO 2660
  530. 2655  GOTO 2635
  531. 2660  GOSUB 30000   '** Textpad **
  532. 2665  PRINT FNCEN$("and with the help of our straightedge",40)
  533. 2670  FOR K=1 TO 1500:NEXT K
  534. 2675  GOSUB 30000   '** Textpad **
  535. 2680  PRINT FNCEN$("fold and backfold this corner",40)
  536. 2685  FOR K=1 TO 750:NEXT K
  537. 2690  FOR K=1 TO 15
  538. 2695  PSET(160,22):DRAW"E5L4U7L2D7L4F5"
  539. 2700  PAINT(160,16)
  540. 2705  FOR M=1 TO 25:NEXT M
  541. 2710  CIRCLE(160,16),7,0
  542. 2715  PAINT(160,16),0
  543. 2720  NEXT K
  544. 2725  FOR K=1 TO 750:NEXT K
  545. 2730  GOSUB 30000   '** Textpad **
  546. 2735  PRINT FNCEN$("down to this point,",40)
  547. 2740  FOR K=1 TO 750:NEXT K
  548. 2745  FOR K=1 TO 15
  549. 2750  CIRCLE(195,100),5
  550. 2755  LINE(193,100)-(197,100)
  551. 2760  LINE(195,98)-(195,102)
  552. 2765  FOR M=1 TO 25:NEXT M
  553. 2770  CIRCLE(195,100),5,0
  554. 2775  LINE(193,100)-(197,100),0
  555. 2780  LINE(195,98)-(195,102),0
  556. 2785  NEXT K
  557. 2790  FOR K=1 TO 750:NEXT K
  558. 2795  GOSUB 30000   '** Textpad **
  559. 2800  PRINT FNCEN$("SO!",40)
  560. 2805  FOR K=1 TO 750:NEXT K
  561. 2810  FOR Q=0 TO 32
  562. 2815  LINE(137,80)-(160+0.5*Q,30+Q)
  563. 2820  LINE-(160,70)
  564. 2825  LINE(137,80)-(160+0.5*Q,30+Q),0
  565. 2830  LINE(137,80)-(160+0.5*Q,29+Q),0
  566. 2835  NEXT Q
  567. 2840  PSET(160,69),0:PSET(162,68),0:PSET(177,64),0
  568. 2845  FOR Q=0 TO 38
  569. 2850  PSET(160,69),0:PSET(162,68),0:PSET(177,64),0
  570. 2855  LINE(137,80)-(176+0.5*Q,62+Q)
  571. 2860  LINE-(160,70)
  572. 2865  LINE(160,70)-(177+0.5*Q,61+Q),0
  573. 2870  NEXT Q
  574. 2875  LINE(195,100)-(137,80),0
  575. 2880  FOR K=1 TO 750:NEXT K
  576. 2885  GOSUB 30000   '** Textpad **
  577. 2890  PRINT FNCEN$("and back we go up again!",40)
  578. 2895  FOR K=1 TO 750:NEXT K
  579. 2900  FOR Q=0 TO 38
  580. 2905  LINE(137,80)-(195-0.5*Q,100-Q)
  581. 2910  LINE-(160,70)
  582. 2915  LINE(137,80)-(195-0.5*Q,100-Q),0
  583. 2920  LINE(137,80)-(195-0.5*Q,101-Q),0
  584. 2925  LINE(137,80)-(153,86-0.32*Q)
  585. 2930  LINE(137,80)-(153,87-0.32*Q)
  586. 2935  PSET(160,89-0.5*Q)
  587. 2940  PSET(160,91-0.5*Q)
  588. 2945  NEXT Q
  589. 2950  LINE(153,64)-(118,126),0
  590. 2955  FOR Q=0 TO 32
  591. 2960  LINE(137,80)-(176-0.5*Q,62-Q)
  592. 2965  LINE-(160,70)
  593. 2970  LINE(137,80)-(176-0.5*Q,63-Q)
  594. 2975  LINE-(160,70)
  595. 2980  LINE(160,70)-(176-0.5*Q,62-Q),0
  596. 2985  LINE(160,70)-(176-0.5*Q,63-Q),0
  597. 2990  LINE(154,73-0.31*Q)-(159,70-0.38*Q),0
  598. 2995  PSET(160,73-Q)
  599. 3000  LINE(153,64)-(118,126),0
  600. 3005  NEXT Q
  601. 3010  LINE(153,64)-(118,126),0
  602. 3015  LINE(160,58)-(120,130)
  603. 3020  LINE(160,30)-(160,170)
  604. 3025  FOR K=1 TO 750:NEXT K
  605. 3030  GOSUB 30000   '** Textpad **
  606. 3035  PRINT FNCEN$("Your turn to fold and backfold.",40)
  607. 3040  FOR K=1 TO 1500:NEXT K
  608. 3045  GOSUB 30000       '*** Textpad ***
  609. 3050  PRINT FNCEN$("Press <R> to review that fold.",40)
  610. 3055  FOR K=1 TO 1000:NEXT K
  611. 3060  PRINT FNCEN$("Press <C> to continue.",40)
  612. 3065  A$=INKEY$:IF A$="" GOTO 3065
  613. 3070  IF A$="r" OR A$="R" GOTO 3085
  614. 3075  IF A$="c" OR A$="C" GOTO 3130
  615. 3080  GOTO 3045
  616. 3085  FOR A=0 TO 20
  617. 3090  OUT 66,A:OUT 66,A
  618. 3095  OUT 97,(INP(97) OR 3)
  619. 3100  NEXT A
  620. 3105  SOUND 37,0
  621. 3110  GOSUB 30000   '** Textpad **
  622. 3115  PRINT FNCEN$("* Review *",40)
  623. 3120  FOR K=1 TO 750:NEXT K
  624. 3125  GOTO 2350
  625. 3130  GOSUB 30000   '** Textpad **
  626. 3135  PRINT FNCEN$("Our next fold again takes this corner",40)
  627. 3140  FOR K=1 TO 750:NEXT K
  628. 3145  FOR K=1 TO 15
  629. 3150  PSET(160,22):DRAW"E5L4U7L2D7L4F5"
  630. 3155  PAINT(160,16)
  631. 3160  FOR M=1 TO 25:NEXT M
  632. 3165  CIRCLE(160,16),7,0
  633. 3170  PAINT(160,16),0
  634. 3175  NEXT K
  635. 3180  FOR K=1 TO 750:NEXT K
  636. 3185  GOSUB 30000   '** Textpad **
  637. 3190  PRINT FNCEN$("back down to this point",40)
  638. 3195  FOR K=1 TO 750:NEXT K
  639. 3200  FOR K=1 TO 15
  640. 3205  CIRCLE(195,100),5
  641. 3210  LINE(193,100)-(197,100)
  642. 3215  LINE(195,98)-(195,102)
  643. 3220  FOR M=1 TO 25:NEXT M
  644. 3225  CIRCLE(195,100),5,0
  645. 3230  LINE(193,100)-(197,100),0
  646. 3235  LINE(195,98)-(195,102),0
  647. 3240  NEXT K
  648. 3245  FOR K=1 TO 750:NEXT K
  649. 3250  GOSUB 30000   '** Textpad **
  650. 3255  PRINT FNCEN$("over this same line,",40)
  651. 3260  FOR K=1 TO 750:NEXT K
  652. 3265  LINE(137,80)-(160,70),2
  653. 3270  FOR K=1 TO 750:NEXT K
  654. 3275  GOSUB 30000   '** Textpad **
  655. 3280  PRINT FNCEN$("but the difference is",40)
  656. 3285  FOR K=1 TO 1500:NEXT K
  657. 3290  GOSUB 30000   '** Textpad **
  658. 3295  PRINT FNCEN$("this time we have a HOOD FOLD,",40)
  659. 3300  FOR K=1 TO 1500:NEXT K
  660. 3305  GOSUB 30000   '** Textpad **
  661. 3310  PRINT FNCEN$("which means we have to open up PENGUIN",40)
  662. 3315  FOR K=1 TO 750:NEXT K
  663. 3320  FOR A=0 TO 20
  664. 3325  OUT 66,A:OUT 66,A
  665. 3330  OUT 97,(INP(97) OR 3)
  666. 3335  NEXT A
  667. 3340  SOUND 37,0
  668. 3345  LINE(160,30)-(107,133)
  669. 3350  LINE-(160,170)
  670. 3355  PAINT(110,130)
  671. 3360  LINE(160,30)-(115,130),0
  672. 3365  LINE-(160,170),0
  673. 3370  FOR K=1 TO 750:NEXT K
  674. 3375  GOSUB 30000   '** Textpad **
  675. 3380  PRINT FNCEN$("considerably to execute the fold,",40)
  676. 3385  FOR K=1 TO 1500:NEXT K
  677. 3390  GOSUB 30000   '** Textpad **
  678. 3395  PRINT FNCEN$("and the inside surfaces here",40)
  679. 3400  FOR K=1 TO 750:NEXT K
  680. 3405  FOR K=1 TO 15
  681. 3410  PSET(140,50):DRAW"H5D4L7D2R7D4E5"
  682. 3415  PAINT(134,50)
  683. 3420  FOR M=1 TO 25:NEXT M
  684. 3425  CIRCLE(134,50),7,0
  685. 3430  PAINT(134,50),0
  686. 3435  NEXT K
  687. 3440  FOR K=1 TO 750:NEXT K
  688. 3445  GOSUB 30000   '** Textpad **
  689. 3450  PRINT FNCEN$("end up as outside surfaces",40)
  690. 3455  FOR K=1 TO 1500:NEXT K
  691. 3460  GOSUB 30000   '** Textpad **
  692. 3465  PRINT FNCEN$("HERE!",40)
  693. 3470  FOR K=1 TO 750:NEXT K
  694. 3475  FOR A=0 TO 20
  695. 3480  OUT 66,A:OUT 66,A
  696. 3485  OUT 97,(INP(97) OR 3)
  697. 3490  NEXT A
  698. 3495  SOUND 37,0
  699. 3500  LINE(149,53)-(144,64),0
  700. 3505  LINE(160,30)-(107,133),0
  701. 3510  LINE-(160,170),0
  702. 3515  LINE-(115,130),0
  703. 3520  LINE-(137,80),0
  704. 3525  LINE-(160,70),0
  705. 3530  LINE-(160,30),0
  706. 3535  PAINT(150,60),0
  707. 3540  PAINT(112,133),0
  708. 3545  PAINT(152,68),0
  709. 3550  LINE(115,131)-(148,160),0
  710. 3555  LINE(160,30)-(115,130)
  711. 3560  LINE-(160,170)
  712. 3565  LINE(155,42)-(138,79),0
  713. 3570  LINE(150,50)-(160,69),0,BF
  714. 3575  LINE(160,30)-(137,80),0
  715. 3580  LINE(138,80)-(160,70)
  716. 3585  LINE-(195,100)
  717. 3590  LINE-(160,91)
  718. 3595  PAINT(165,80)
  719. 3600  LINE(195,100)-(138,80)
  720. 3605  PAINT(155,80)
  721. 3610  LINE(195,100)-(138,80),0
  722. 3615  LINE(146,77)-(144,80)
  723. 3620  FOR K=1 TO 15
  724. 3625  LINE(138,80)-(160,70),0
  725. 3630  LINE-(195,100),0
  726. 3635  LINE-(138,80),0
  727. 3640  FOR M=1 TO 25:NEXT M
  728. 3645  LINE(138,80)-(160,70)
  729. 3650  LINE-(195,100)
  730. 3655  LINE-(138,80)
  731. 3660  NEXT K
  732. 3665  LINE(195,100)-(138,80),0
  733. 3670  FOR K=1 TO 750:NEXT K
  734. 3675  GOSUB 30000       '*** Textpad ***
  735. 3680  PRINT FNCEN$("Press <R> to review that fold.",40)
  736. 3685  FOR K=1 TO 1000:NEXT K
  737. 3690  PRINT FNCEN$("Press <C> to continue.",40)
  738. 3695  A$=INKEY$:IF A$="" GOTO 3695
  739. 3700  IF A$="r" OR A$="R" GOTO 3715
  740. 3705  IF A$="c" OR A$="C" GOTO 3810
  741. 3710  GOTO 3675
  742. 3715  FOR A=0 TO 20
  743. 3720  OUT 66,A:OUT 66,A
  744. 3725  OUT 97,(INP(97) OR 3)
  745. 3730  NEXT A
  746. 3735  SOUND 37,0
  747. 3740  LINE(125,70)-(195,100),0,BF
  748. 3745  LINE(115,130)-(160,30)
  749. 3750  LINE-(160,100)
  750. 3755  LINE(153,100)-(153,64)
  751. 3760  LINE-(160,58)
  752. 3765  LINE(153,64)-(118,126)
  753. 3770  PAINT(155,55)
  754. 3775  PAINT(145,85)
  755. 3780  LINE(153,64)-(118,126),0
  756. 3785  LINE(160,58)-(120,130)
  757. 3790  GOSUB 30000   '** Textpad **
  758. 3795  PRINT FNCEN$("* Review *",40)
  759. 3800  FOR K=1 TO 750:NEXT K
  760. 3805  GOTO 3130
  761. 3810  GOSUB 30000   '** Textpad **
  762. 3815  PRINT FNCEN$("We now tuck PENGUIN's beak",40)
  763. 3820  FOR K=1 TO 1000:NEXT K
  764. 3825  GOSUB 30000   '** Textpad **
  765. 3830  PRINT FNCEN$("into this pocket,",40)
  766. 3835  FOR K=1 TO 500:NEXT K
  767. 3840  FOR K=1 TO 15
  768. 3845  PSET(175,103):DRAW"G5R4D7R2U7R4H5"
  769. 3850  PAINT(175,109)
  770. 3855  FOR M=1 TO 25:NEXT M
  771. 3860  CIRCLE(175,109),7,0
  772. 3865  PAINT(175,109),0
  773. 3870  NEXT K
  774. 3875  FOR K=1 TO 750:NEXT K
  775. 3880  GOSUB 30000   '** Textpad **
  776. 3885  PRINT FNCEN$("bringing into play those folds",40)
  777. 3890  FOR K=1 TO 1500:NEXT K
  778. 3895  PRINT FNCEN$("we made when we first started,",40)
  779. 3900  FOR K=1 TO 750:NEXT K
  780. 3905  PSET(183,80):DRAW"E5L4U7L2D7L4F5"
  781. 3910  PAINT(183,74)
  782. 3915  FOR K=1 TO 500:NEXT K
  783. 3920  FOR K=1 TO 25
  784. 3925  LINE(177,85)-(168,91),1
  785. 3930  LINE(185,91)-(180,95),1
  786. 3935  FOR M=1 TO 25:NEXT M
  787. 3940  LINE(177,85)-(168,91),0
  788. 3945  LINE(185,91)-(180,95),0
  789. 3950  NEXT K
  790. 3955  CIRCLE(183,74),7,0
  791. 3960  PAINT(183,74),0
  792. 3965  FOR K=1 TO 750:NEXT K
  793. 3970  GOSUB 30000   '** Textpad **
  794. 3975  PRINT FNCEN$("SO!",40)
  795. 3980  FOR K=1 TO 750:NEXT K
  796. 3985  LINE(163,94)-(173,96),0
  797. 3990  PSET(168,91),0:PSET(178,85),0:PSET(179,86),0:PSET(178,88),0:PSET(160,88)
  798. 3995  FOR Q=0 TO 5
  799. 4000  LINE(161,93-Q)-(195,100),0
  800. 4005  NEXT Q
  801. 4010  FOR Q=0 TO 18
  802. 4015  LINE(168,91)-(195-Q,100-0.83*Q),0
  803. 4020  LINE-(177,85),0
  804. 4025  FOR M=1 TO 15:NEXT M
  805. 4030  NEXT Q
  806. 4035  PSET(168,91),0
  807. 4040  FOR Q=O TO 17
  808. 4045  LINE(168,91)-(177-Q,85-0.88*Q),1
  809. 4050  LINE-(177,85),1
  810. 4055  LINE(168,91)-(177-Q,85-0.88*Q)
  811. 4060  LINE-(177,85)
  812. 4065  FOR M=1 TO 15:NEXT M
  813. 4070  NEXT Q
  814. 4075  PSET(168,91),0
  815. 4080  LINE(160,70)-(169,90),1
  816. 4085  GOSUB 30000   '*** Textpad ***
  817. 4090  PRINT FNCEN$("Press <C> to continue.",40)
  818. 4095  A$=INKEY$:IF A$="" GOTO 4095
  819. 4100  IF A$="C" OR A$="c" GOTO 4110
  820. 4105  GOTO 4085
  821. 4110  GOSUB 30000   '** Textpad **
  822. 4115  PRINT FNCEN$("and pull PENGUIN's beak out,",40)
  823. 4120  FOR K=1 TO 750:NEXT K
  824. 4125  GOSUB 30000   '** Textpad **
  825. 4130  PRINT FNCEN$("SO!",40)
  826. 4135  FOR K=1 TO 750:NEXT K
  827. 4140  LINE(171,80)-(166,85),1
  828. 4145  FOR K=1 TO 250:NEXT K
  829. 4150  FOR Q=O TO 11
  830. 4155  LINE(171,80)-(161+Q,71+0.91*Q),1
  831. 4160  LINE-(166,85),1
  832. 4165  LINE(171,80)-(160+Q,70+0.91*Q)
  833. 4170  LINE-(166,85)
  834. 4175  FOR M=1 TO 15:NEXT M
  835. 4180  NEXT Q
  836. 4185  PSET(168,91),0
  837. 4190  FOR Q=0 TO 11
  838. 4195  LINE(171,80)-(171+Q,80+0.82*Q)
  839. 4200  LINE-(176,85),1
  840. 4205  FOR M=1 TO 15:NEXT M
  841. 4210  NEXT Q
  842. 4215  PSET(168,91),0
  843. 4220  LINE(160,70)-(169,90)
  844. 4225  LINE(171,80)-(166,85)
  845. 4230  LINE(160,88)-(160,95)
  846. 4235  LINE(160,70)-(182,89)
  847. 4240  LINE-(175,87)
  848. 4245  PSET(178,87):PSET(179,87):PSET(177,86)
  849. 4250  PSET(177,87):PSET(175,88):PSET(176,88)
  850. 4255  LINE(177,85)-(174,88),0
  851. 4260  PSET(171,82):PSET(170,82):PSET(168,84):PSET(169,83):PSET(176,85)
  852. 4265  FOR K=1 TO 750:NEXT K
  853. 4270  GOSUB 30000       '*** Textpad ***
  854. 4275  PRINT FNCEN$("Press <R> to review that fold.",40)
  855. 4280  FOR K=1 TO 1000:NEXT K
  856. 4285  PRINT FNCEN$("Press <C> to continue.",40)
  857. 4290  A$=INKEY$:IF A$="" GOTO 4290
  858. 4295  IF A$="r" OR A$="R" GOTO 4310
  859. 4300  IF A$="c" OR A$="C" GOTO 4480
  860. 4305  GOTO 4270
  861. 4310  FOR A=0 TO 20
  862. 4315  OUT 66,A:OUT 66,A
  863. 4320  OUT 97,(INP(97) OR 3)
  864. 4325  NEXT A
  865. 4330  SOUND 37,0
  866. 4335  LINE(177,84)-(182,89),0
  867. 4340  LINE-(174,88),0
  868. 4345  LINE-(177,84),0
  869. 4350  PAINT(178,87),0
  870. 4355  LINE(160,30)-(107,133),0
  871. 4360  LINE-(160,170),0
  872. 4365  LINE-(115,130),0
  873. 4370  LINE-(137,80),0
  874. 4375  LINE-(160,70),0
  875. 4380  LINE-(160,30),0
  876. 4385  PAINT(150,60),0
  877. 4390  PAINT(112,133),0
  878. 4395  PAINT(152,68),0
  879. 4400  LINE(115,131)-(148,160),0
  880. 4405  LINE(160,30)-(115,130)
  881. 4410  LINE-(160,170)
  882. 4415  LINE(155,42)-(138,79),0
  883. 4420  LINE(160,30)-(137,80),0
  884. 4425  LINE(138,80)-(160,70)
  885. 4430  LINE-(195,100)
  886. 4435  LINE-(160,91)
  887. 4440  PAINT(178,90)
  888. 4445  LINE(195,100)-(138,80)
  889. 4450  LINE(195,100)-(138,80),0
  890. 4455  LINE(146,77)-(144,80)
  891. 4460  GOSUB 30000   '** Textpad **
  892. 4465  PRINT FNCEN$("* Review *",40)
  893. 4470  FOR K=1 TO 1500:NEXT K
  894. 4475  GOTO 3810
  895. 4480  GOSUB 30000   '** Textpad **
  896. 4485  PRINT FNCEN$("For our next fold,",40)
  897. 4490  FOR K=1 TO 1500:NEXT K
  898. 4495  GOSUB 30000   '** Textpad **
  899. 4500  PRINT FNCEN$("we fold and backfold this corner",40)
  900. 4505  FOR K=1 TO 750:NEXT K
  901. 4510  FOR K=1 TO 15
  902. 4515  PSET(160,178):DRAW"G5R4D7R2U7R4H5"
  903. 4520  PAINT(160,184)
  904. 4525  FOR M=1 TO 25:NEXT M
  905. 4530  CIRCLE(160,184),7,0
  906. 4535  PAINT(160,184),0
  907. 4540  NEXT K
  908. 4545  FOR K=1 TO 750:NEXT K
  909. 4550  GOSUB 30000   '** Textpad **
  910. 4555  PRINT FNCEN$("up to this point",40)
  911. 4560  FOR K=1 TO 750:NEXT K
  912. 4565  FOR K=1 TO 15
  913. 4570  CIRCLE(97,115),5
  914. 4575  LINE(95,115)-(99,115)
  915. 4580  LINE(97,113)-(97,117)
  916. 4585  FOR M=1 TO 25:NEXT M
  917. 4590  CIRCLE(97,115),5,0
  918. 4595  LINE(95,115)-(99,115),0
  919. 4600  LINE(97,113)-(97,117),0
  920. 4605  NEXT K
  921. 4610  FOR K=1 TO 750:NEXT K
  922. 4615  GOSUB 30000   '** Textpad **
  923. 4620  PRINT FNCEN$("along this line,",40)
  924. 4625  FOR K=1 TO 750:NEXT K
  925. 4630  LINE(128,142)-(160,115)
  926. 4635  FOR K=1 TO 750:NEXT K
  927. 4640  GOSUB 30000   '** Textpad **
  928. 4645  PRINT FNCEN$("Oops!  PENGUIN's flipper is in the way.",40)
  929. 4650  FOR K=1 TO 1500:NEXT K
  930. 4655  GOSUB 30000   '** Textpad **
  931. 4660  PRINT FNCEN$("Let's move it out of the way",40)
  932. 4665  FOR K=1 TO 750:NEXT K
  933. 4670  PRINT FNCEN$("for the time being.",40)
  934. 4675  FOR K=1 TO 1500:NEXT K
  935. 4680  FOR Q=0 TO 5
  936. 4685  LINE(118,126)-(153-Q,126-Q),0
  937. 4690  LINE-(153,86),0
  938. 4695  NEXT Q
  939. 4700  LINE(128,142)-(160,115)
  940. 4705  FOR K=1 TO 750:NEXT K
  941. 4710  GOSUB 30000   '** Textpad **
  942. 4715  PRINT FNCEN$("and fold!",40)
  943. 4720  FOR K=1 TO 750:NEXT K
  944. 4725  FOR Q=0 TO 32
  945. 4730  LINE(128,142)-(160-Q,170-0.88*Q)
  946. 4735  LINE-(160,115)
  947. 4740  LINE(128,142)-(160-Q,170-0.88*Q),0
  948. 4745  LINE-(160,115),0
  949. 4750  LINE(160,115)-(128,142)
  950. 4755  NEXT Q
  951. 4760  FOR Q=0 TO 31
  952. 4765  LINE(128,142)-(128-Q,142-0.87*Q)
  953. 4770  LINE-(160,115)
  954. 4775  LINE(128,142)-(128-Q,142-0.87*Q),0
  955. 4780  LINE-(160,115),0
  956. 4785  LINE(160,115)-(128,142)
  957. 4790  LINE(117,125)-(119,129),0
  958. 4795  LINE(115,129)-(116,130),0
  959. 4800  PSET(122,136),0
  960. 4805  NEXT Q
  961. 4810  LINE(160,115)-(97,115)
  962. 4815  LINE-(128,142)
  963. 4820  PSET(125,114),0
  964. 4825  FOR K=1 TO 750:NEXT K
  965. 4830  GOSUB 30000   '** Textpad **
  966. 4835  PRINT FNCEN$("and back down again!",40)
  967. 4840  FOR K=1 TO 750:NEXT K
  968. 4845  FOR Q=0 TO 31
  969. 4850  LINE(128,142)-(97+Q,115+0.87*Q)
  970. 4855  LINE-(160,115)
  971. 4860  LINE(128,142)-(97+Q,115+0.87*Q),0
  972. 4865  LINE-(160,115),0
  973. 4870  LINE(160,115)-(128,142)
  974. 4875  LINE(122-0.16*Q,114+0.35*Q)-(148-0.03*Q,114+0.19*Q)
  975. 4880  NEXT Q
  976. 4885  LINE(117,125)-(115,130)
  977. 4890  LINE-(120,130)
  978. 4895  LINE-(123,125)
  979. 4900  PAINT(117,128)
  980. 4905  LINE(142,83)-(125,113)
  981. 4910  LINE(142,84)-(128,109)
  982. 4915  LINE(142,83)-(118,126),0
  983. 4920  LINE(119,127)-(121,127),0
  984. 4925  LINE(119,128)-(120,128),0
  985. 4930  PSET(120,129),0
  986. 4935  LINE(115,130)-(128,142)
  987. 4940  FOR Q=0 TO 32
  988. 4945  LINE(128,142)-(128+Q,142+0.88*Q)
  989. 4950  LINE-(160,115)
  990. 4955  LINE(128,142)-(128+Q,142+0.88*Q),0
  991. 4960  LINE-(160,115),0
  992. 4965  LINE(128,142)-(160,115)
  993. 4970  NEXT Q
  994. 4975  LINE(128,142)-(160,170)
  995. 4980  LINE-(160,115)
  996. 4985  FOR K=1 TO 750:NEXT K
  997. 4990  FOR Q=0 TO 6
  998. 4995  LINE(118,126)-(147+Q,120+Q)
  999. 5000  LINE-(153,86)
  1000. 5005  PSET(145,121)
  1001. 5010  NEXT Q
  1002. 5015  FOR K=1 TO 750:NEXT K
  1003. 5020  GOSUB 30000   '** Textpad **
  1004. 5025  PRINT FNCEN$("Your turn to fold and backfold.",40)
  1005. 5030  FOR K=1 TO 1500:NEXT K
  1006. 5035  GOSUB 30000       '*** Textpad ***
  1007. 5040  PRINT FNCEN$("To review that fold, press <R>.",40)
  1008. 5045  FOR K=1 TO 1000:NEXT K
  1009. 5050  PRINT FNCEN$("To continue, press <C>.",40)
  1010. 5055  A$=INKEY$:IF A$="" GOTO 5055
  1011. 5060  IF A$="r" OR A$="R" GOTO 5075
  1012. 5065  IF A$="c" OR A$="C" GOTO 5135
  1013. 5070  GOTO 5035
  1014. 5075  FOR A=0 TO 20
  1015. 5080  OUT 66,A:OUT 66,A
  1016. 5085  OUT 97,(INP(97) OR 3)
  1017. 5090  NEXT A
  1018. 5095  SOUND 37,0
  1019. 5100  LINE(128,142)-(160,115),0
  1020. 5105  LINE(153,121)-(147,126)
  1021. 5110  PSET(128,142):PSET(160,115):PSET(150,123)
  1022. 5115  GOSUB 30000   '** Textpad **
  1023. 5120  PRINT FNCEN$("* Review *",40)
  1024. 5125  FOR K=1 TO 1500:NEXT K
  1025. 5130  GOTO 4480
  1026. 5135  GOSUB 30000   '** Textpad **
  1027. 5140  PRINT FNCEN$("Our final fold tucks that last fold",40)
  1028. 5145  FOR K=1 TO 1500:NEXT K
  1029. 5150  GOSUB 30000   '** Textpad **
  1030. 5155  PRINT FNCEN$("into this pocket,",40)
  1031. 5160  FOR K=1 TO 750:NEXT K
  1032. 5165  FOR A=0 TO 20
  1033. 5170  OUT 66,A:OUT 66,A
  1034. 5175  OUT 97,(INP(97) OR 3)
  1035. 5180  NEXT A
  1036. 5185  SOUND 37,0
  1037. 5190  LINE(137,81)-(109,130)
  1038. 5195  LINE-(159,170)
  1039. 5200  LINE-(114,130)
  1040. 5205  PAINT(120,117)
  1041. 5210  LINE(136,81)-(114,130),0
  1042. 5215  LINE(115,130)-(160,170),0
  1043. 5220  FOR K=1 TO 15
  1044. 5225  PSET(105,125):DRAW"H5D4L7D2R7D4E5"
  1045. 5230  PAINT(99,125)
  1046. 5235  FOR M=1 TO 25:NEXT M
  1047. 5240  CIRCLE(99,125),7,0
  1048. 5245  PAINT(99,125),0
  1049. 5250  NEXT K
  1050. 5255  FOR K=1 TO 750:NEXT K
  1051. 5260  GOSUB 30000   '** Textpad **
  1052. 5265  PRINT FNCEN$("SO!",40)
  1053. 5270  FOR K=1 TO 750:NEXT K
  1054. 5275  FOR A=0 TO 20
  1055. 5280  OUT 66,A:OUT 66,A
  1056. 5285  OUT 97,(INP(97) OR 3)
  1057. 5290  NEXT A
  1058. 5295  SOUND 37,0
  1059. 5300  LINE(137,81)-(109,130),0
  1060. 5305  LINE-(159,170),0
  1061. 5310  LINE-(114,130),0
  1062. 5315  LINE-(137,81),0
  1063. 5320  PAINT(114,125),0
  1064. 5325  LINE(126,102)-(123,108),0
  1065. 5330  LINE(128,142)-(114,130)
  1066. 5335  LINE-(97,115)
  1067. 5340  LINE-(160,115)
  1068. 5345  PAINT(115,120)
  1069. 5350  LINE(137,81)-(114,130),0
  1070. 5355  LINE(160,116)-(160,170),0
  1071. 5360  PSET(125,115),0
  1072. 5365  LINE(154,115)-(159,115),0
  1073. 5370  FOR K=1 TO 750:NEXT K
  1074. 5375  GOSUB 30000       '*** Textpad ***
  1075. 5380  PRINT FNCEN$("Press <R> to review that fold.",40)
  1076. 5385  FOR K=1 TO 1000:NEXT K
  1077. 5390  PRINT FNCEN$("Press <C> to continue.",40)
  1078. 5395  A$=INKEY$:IF A$="" GOTO 5395
  1079. 5400  IF A$="r" OR A$="R" GOTO 5415
  1080. 5405  IF A$="c" OR A$="C" GOTO 5495
  1081. 5410  GOTO 5375
  1082. 5415  FOR A=0 TO 20
  1083. 5420  OUT 66,A:OUT 66,A
  1084. 5425  OUT 97,(INP(97) OR 3)
  1085. 5430  NEXT A
  1086. 5435  SOUND 37,0
  1087. 5440  LINE(120,115)-(97,115),0
  1088. 5445  LINE-(114,129),0
  1089. 5450  PAINT(110,120),0
  1090. 5455  LINE(154,115)-(159,115),0
  1091. 5460  LINE(128,142)-(160,170)
  1092. 5465  LINE-(160,115)
  1093. 5470  LINE(100,118)-(113,129),0
  1094. 5475  GOSUB 30000   '** Textpad **
  1095. 5480  PRINT FNCEN$("* Review *",40)
  1096. 5485  FOR K=1 TO 1500:NEXT K
  1097. 5490  GOTO 5135
  1098. 5495  GOSUB 30000   '** Textpad **
  1099. 5500  PRINT FNCEN$("Our last task is to set PENGUIN",40)
  1100. 5505  FOR K=1 TO 1000:NEXT K
  1101. 5510  PRINT FNCEN$("firmly on the ground,",40)
  1102. 5515  FOR K=1 TO 1500:NEXT K
  1103. 5520  GOSUB 30000   '** Textpad **
  1104. 5525  PRINT FNCEN$("SO!",40)
  1105. 5530  FOR K=1 TO 750:NEXT K
  1106. 5535  FOR A=0 TO 20
  1107. 5540  OUT 66,A:OUT 66,A
  1108. 5545  OUT 97,(INP(97) OR 3)
  1109. 5550  NEXT A
  1110. 5555  SOUND 37,0
  1111. 5560  CLS
  1112. 5565  LINE(153,92)-(165,85)
  1113. 5570  LINE-(164,78)
  1114. 5575  LINE-(173,72)
  1115. 5580  LINE-(148,77)
  1116. 5585  LINE-(139,100)
  1117. 5590  LINE-(156,144)
  1118. 5595  LINE-(182,120)
  1119. 5600  LINE-(153,92)
  1120. 5605  PAINT(160,100)
  1121. 5610  LINE(157,86)-(178,108)
  1122. 5615  LINE-(178,149)
  1123. 5620  LINE-(135,149)
  1124. 5625  LINE-(152,134)
  1125. 5630  LINE(139,101)-(158,149)
  1126. 5635  LINE(159,148)-(163,144)
  1127. 5640  LINE-(160,140)
  1128. 5645  PAINT(150,145):PAINT(160,142)
  1129. 5650  LINE(139,100)-(165,86),0
  1130. 5655  LINE-(165,74),0
  1131. 5660  LINE(143,98)-(159,143),0
  1132. 5665  LINE-(165,144),0
  1133. 5670  LINE(138,101)-(158,149),0
  1134. 5675  PSET(161,143),0
  1135. 5680  LINE(159,142)-(182,121),0
  1136. 5685  LINE(160,142)-(161,142),0
  1137. 5690  FOR K=1 TO 750:NEXT K
  1138. 5695  GOSUB 30000   '** Textpad **
  1139. 5700  PRINT FNCEN$("And there we have it!",40)
  1140. 5705  FOR K=1 TO 750:NEXT K
  1141. 5710  GOSUB 30000   '** Textpad **
  1142. 5715  PRINT FNCEN$("PENGUIN",40)
  1143. 5720  FOR K=1 TO 750:NEXT K
  1144. 5725  GOSUB 30000   '** Textpad **
  1145. 5730  PRINT FNCEN$("Mission accomplished!",40)
  1146. 5735  FOR K=1 TO 750:NEXT K
  1147. 5740  GOSUB 30000                '*** Textpad ***
  1148. 5745  PRINT FNCEN$("  Press <1> - To return to MAIN MENU.",40)
  1149. 5750  PRINT FNCEN$("   <2> - To repeat PENGUIN.",40)
  1150. 5755  PRINT FNCEN$("      <3> - To exit from program.",40)
  1151. 5760  E$=INPUT$(1)
  1152. 5765  IF E$<"1" OR E$>"3" GOTO 5760
  1153. 5770  SEL=VAL(E$)
  1154. 5775  COMMON SEL
  1155. 5780  CLS
  1156. 5785  LOCATE 13,1:PRINT FNCEN$("One moment, please.",40)
  1157. 5786  LINE(70,75)-(250,125),3,B
  1158. 5790  ON SEL GOTO 5795,5800,5805
  1159. 5795  CHAIN"a:main"
  1160. 5800  CHAIN"a:penguin
  1161. 5805  CHAIN"a:end"
  1162. 5810  END
  1163. 30000  LOCATE 1,1
  1164. 30010  PRINT"                                                                                                                        "
  1165. 30020  LOCATE 1,1:RETURN
  1166.